package cn.edu.xmu.oomall.payment.model.vo;

import cn.edu.xmu.oomall.payment.constant.Constants;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.time.LocalDateTime;

/**
 * 支付单简略信息
 */
@NoArgsConstructor
@AllArgsConstructor
@Data
public class SimplePaymentVo {
    @ApiModelProperty(value = "支付id")
    private Long id;
    @ApiModelProperty(value = "交易流水号")
    private String tradeSn;
    @ApiModelProperty(value = "交易渠道id")
    private Integer patternId;
    @ApiModelProperty(value = "单据id")
    private String documentId;
    @ApiModelProperty(value = "单据类型 0 订单，1 保证金，2 订单订金， 3 订单尾款，4售后")
    private Byte documentType;
    @ApiModelProperty(value = "备注")
    private String descr;
    @ApiModelProperty(value = "支付金额")
    private Long amount;
    @ApiModelProperty(value = "实际支付金额")
    private Long actualAmount;
    @ApiModelProperty(value = "实际支付时间")
    @JsonFormat(pattern = Constants.DATE_TIME_FORMAT, timezone = "GMT+8")
    private LocalDateTime payTime;
    @ApiModelProperty(value = "支付状态")
    private Byte state;
    @ApiModelProperty(value = "开始支付时间")
    @JsonFormat(pattern = Constants.DATE_TIME_FORMAT, timezone = "GMT+8")
    private LocalDateTime beginTime;
    @ApiModelProperty(value = "支付截止时间")
    @JsonFormat(pattern = Constants.DATE_TIME_FORMAT, timezone = "GMT+8")
    private LocalDateTime endTime;
}
